package ch14_反射与注解.文档注解和API文档;

/**
 * @author 挚爱之夕
 * @date 2021/8/29 - 08 - 29 - 20:04
 * @Description: ch14_反射与注解.文档注解和API文档
 * @Version: 1.0
 */

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 本类用于演示文档注释
 * @author 挚夕
 * @version 1.0
 */
public class DocAnnotationDemo {
    /**
     * 根据指定的语言，得到当前时间的字符串描述。
     *
     * @param lang 指定的语言
     * @return 当前时间的字符串描述
     * @throws UnsupportedLanguageException 若指定语言未定义
     * @see Language
     *
     */
    public String getTime(Language lang) throws UnsupportedLanguageException{
        String timeFormatStr;
        if(lang == Language.CN){
            timeFormatStr = "yyyy年MM月dd日 HH时mm分ss秒";
        }else if(lang == Language.EN){
            timeFormatStr = "MM/dd/yyyy HH:mm:ss";
        }else{
            throw new UnsupportedLanguageException();
        }
        SimpleDateFormat sdf = new SimpleDateFormat(timeFormatStr);
        return sdf.format(new Date());
    }

    /**
     * 根据默认的语言，得到当前时间的字符串描述
     *
     * @deprecated 从1.0开始，由 getTime(Language lang)取代
     * @return 当前时间的字符串描述
     * @see #getTime(Language)
     */
    @Deprecated
    public String getTime(){
        return getTime(Language.EN);
    }
}
